#ifndef __G_SC7A20_H__
#define __G_SC7A20_H__

#include "soft_iic_drv.h"

#define SC7A20_I2C_WADDR    0x30	//I2C写地址：7位I2C地址+一位写
#define SC7A20_I2C_RADDR    0x31	//I2C写地址：7位I2C地址+一位读

#define SC7A20_WHO_AM_I_REG  0x0F    // ID寄存器地址
#define SC7A20_ID           (0x11)  // 实际ID

#define SC7A20_MIN_MOVE_SIZE       (100)  // 有效的位移量最小值
#define BODY_MODE_MIN_MOVE_SIZE    (200)  // 身体模式 --更迟钝些才行，否则身体抽动容易触发

typedef struct 
{
    uint8_t active_flag;
    uint8_t active_cnt;
    uint8_t unact_cnt;

    uint16_t cur_x;
    uint16_t cur_y;
    uint16_t cur_z;

    uint16_t last_x;
    uint16_t last_y;
    uint16_t last_z;
    uint16_t move_size;

    /* data */
}G_SENSER_t;

int gsensor_id_check(void);
int get_gsensor_flag(void);
void g_sensor_read(void);
void SC7A20_Init(void);

#endif
